package com.qf.data.r;

/**
 * description: 快捷生成R对象的工具方法
 * author: Ken
 * 公众号：Java架构栈
 */
public class RUtils {

    /**
     * 生成成功表示的R对象
     * @return
     */
    public static <T> R create(T data){
        return new R(Codes.SUCC.getCode(), Codes.SUCC.getMsg(), data);
    }

    /**
     * 生成一个指定响应枚举的R对象
     * @param codes
     * @param <T>
     * @return
     */
    public static <T> R create(Codes codes, T data){
        return new R(codes.getCode(), codes.getMsg(), data);
    }

    /**
     * 生成一个指定响应枚举的R对象（不携带任何数据）
     * @param codes
     * @return
     */
    public static R create(Codes codes){
        return new R(codes.getCode(), codes.getMsg(), null);
    }
}
